Databases are electronic filing systems that store records or data in a computer system. Computer programs or users can send and retrieve data from the database using a database management system (DBMS).
The amount of data stored in database systems has been continuously increasing over the last few decades. Database management systems manage large volumes of data that need to be efficiently accessed and manipulated. Queries to the database are becoming increasingly complex to execute in view of such massive data structures. If queries to the database are not completed in a sufficient amount of time, then acceptable performance is difficult to achieve.
Many applications are based on data being continuously collected and provided to databases. Such databases pose challenges to efficiently process and query data in a timely fashion.